package com.android.launcher3;

import android.content.ContentValues;
import android.content.Intent;
import android.graphics.Bitmap;
import android.net.Uri;

class LiveFolderInfo extends FolderInfo {

	/**
	 * The base intent, if it exists.
	 */
	Intent baseIntent;

	/**
	 * The live folder's content uri.
	 */
	Uri uri;

	/**
	 * The live folder's display type.
	 */
	int displayMode;

	/**
	 * The live folder icon.
	 */
	Bitmap icon;

	/**
	 * When set to true, indicates that the icon has been resized.
	 */
	boolean filtered;

	/**
	 * Reference to the live folder icon as an application's resource.
	 */
	Intent.ShortcutIconResource iconResource;

	LiveFolderInfo() {
		itemType = LauncherSettings.Favorites.ITEM_TYPE_LIVE_FOLDER;
	}

	@Override
	void onAddToDatabase(ContentValues values) {
		super.onAddToDatabase(values);
		values.put(LauncherSettings.Favorites.TITLE, title.toString());
		values.put(LauncherSettings.Favorites.URI, uri.toString());
		if (baseIntent != null) {
			values.put(LauncherSettings.Favorites.INTENT, baseIntent.toUri(0));
		}
		values.put(LauncherSettings.Favorites.ICON_TYPE,
				LauncherSettings.Favorites.ICON_TYPE_RESOURCE);
		values.put(LauncherSettings.Favorites.DISPLAY_MODE, displayMode);
		if (iconResource != null) {
			values.put(LauncherSettings.Favorites.ICON_PACKAGE,
					iconResource.packageName);
			values.put(LauncherSettings.Favorites.ICON_RESOURCE,
					iconResource.resourceName);
		}
	}
}
